package com.xdf.whiteaccount.entity;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
/**
 * 由 chanchaw 创建于 2023-12-16 16:03:09，实现功能如下：
 * 1. 实现接口 Serializable
 * 2. 无参构造函数
 * 3. 建造者模式
 * 4. getter,setter,toString()
 * 染厂白坯单据明细
 */
public class DyeGreyDetail implements Serializable {
    public DyeGreyDetail() {}
    private static final long serialVersionUID = 1L;

    private Integer id;//
    private Integer parentId;//外键=dye_grey_main.id
    private String contract;//合同号
    private String orderCode;//订单号
    private String goodsName;//品名
    private String mSpecification;//原料规格
    private String mBatch;//原料批号
    private String mHeader;//头份
    private String mHeight;//毛高
    private String whiteMf;//白坯门幅
    private String whiteMc;//白坯米长
    private String whiteKz;//白坯克重
    private BigDecimal piece;//匹数
    private BigDecimal kilo;//公斤
    private BigDecimal meter;//米数
    private Integer state;//状态，1有效，0作废，-1删除
    private String remark;//备注
    private Float seq;//排序序号
    private Integer jrksumId;//白坯打卷汇总表主键=jrkbillsum.id
    private String jrksumShelf;//白坯打卷汇总表中货架号=jrkbillsum.b_barcode
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private java.util.Date createTime;//创建时间，DB自动填充
    private String createUser;//创建人
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private java.util.Date lastTime;//最后一次修改时间
    private String lastUser;//最后一次修改人
    private String goodsId;//品名编号，备用
    private String client;//客户，来自上游织造数据，备用
    private String planCode;//计划单号，来自上游织造数据，备用
    private String machine;//机台号
    private String team;//班次，来自上游织造数据，备用
    private String ab;//ab面，来自上游织造数据，备用

    public Integer getId(){return this.id;}
    public void setId(Integer id){this.id = id;}
    public Integer getParentId(){return this.parentId;}
    public void setParentId(Integer parentId){this.parentId = parentId;}
    public String getContract(){return this.contract;}
    public void setContract(String contract){this.contract = contract;}
    public String getOrderCode(){return this.orderCode;}
    public void setOrderCode(String orderCode){this.orderCode = orderCode;}
    public String getGoodsName(){return this.goodsName;}
    public void setGoodsName(String goodsName){this.goodsName = goodsName;}
    public String getMSpecification(){return this.mSpecification;}
    public void setMSpecification(String mSpecification){this.mSpecification = mSpecification;}
    public String getMBatch(){return this.mBatch;}
    public void setMBatch(String mBatch){this.mBatch = mBatch;}
    public String getMHeader(){return this.mHeader;}
    public void setMHeader(String mHeader){this.mHeader = mHeader;}
    public String getMHeight(){return this.mHeight;}
    public void setMHeight(String mHeight){this.mHeight = mHeight;}
    public String getWhiteMf(){return this.whiteMf;}
    public void setWhiteMf(String whiteMf){this.whiteMf = whiteMf;}
    public String getWhiteMc(){return this.whiteMc;}
    public void setWhiteMc(String whiteMc){this.whiteMc = whiteMc;}
    public String getWhiteKz(){return this.whiteKz;}
    public void setWhiteKz(String whiteKz){this.whiteKz = whiteKz;}
    public BigDecimal getPiece(){return this.piece;}
    public void setPiece(BigDecimal piece){this.piece = piece;}
    public BigDecimal getKilo(){return this.kilo;}
    public void setKilo(BigDecimal kilo){this.kilo = kilo;}
    public BigDecimal getMeter(){return this.meter;}
    public void setMeter(BigDecimal meter){this.meter = meter;}
    public Integer getState(){return this.state;}
    public void setState(Integer state){this.state = state;}
    public String getRemark(){return this.remark;}
    public void setRemark(String remark){this.remark = remark;}
    public Float getSeq(){return this.seq;}
    public void setSeq(Float seq){this.seq = seq;}
    public Integer getJrksumId(){return this.jrksumId;}
    public void setJrksumId(Integer jrksumId){this.jrksumId = jrksumId;}
    public String getJrksumShelf(){return this.jrksumShelf;}
    public void setJrksumShelf(String jrksumShelf){this.jrksumShelf = jrksumShelf;}
    public java.util.Date getCreateTime(){return this.createTime;}
    public void setCreateTime(java.util.Date createTime){this.createTime = createTime;}
    public String getCreateUser(){return this.createUser;}
    public void setCreateUser(String createUser){this.createUser = createUser;}
    public java.util.Date getLastTime(){return this.lastTime;}
    public void setLastTime(java.util.Date lastTime){this.lastTime = lastTime;}
    public String getLastUser(){return this.lastUser;}
    public void setLastUser(String lastUser){this.lastUser = lastUser;}
    public String getGoodsId(){return this.goodsId;}
    public void setGoodsId(String goodsId){this.goodsId = goodsId;}
    public String getClient(){return this.client;}
    public void setClient(String client){this.client = client;}
    public String getPlanCode(){return this.planCode;}
    public void setPlanCode(String planCode){this.planCode = planCode;}
    public String getMachine(){return this.machine;}
    public void setMachine(String machine){this.machine = machine;}
    public String getTeam(){return this.team;}
    public void setTeam(String team){this.team = team;}
    public String getAb(){return this.ab;}
    public void setAb(String ab){this.ab = ab;}


    @Override
    public String toString() {
        return "DyeGreyDetail{" +
        ",id='" + id + '\'' +
        ",parentId='" + parentId + '\'' +
        ",contract='" + contract + '\'' +
        ",orderCode='" + orderCode + '\'' +
        ",goodsName='" + goodsName + '\'' +
        ",mSpecification='" + mSpecification + '\'' +
        ",mBatch='" + mBatch + '\'' +
        ",mHeader='" + mHeader + '\'' +
        ",mHeight='" + mHeight + '\'' +
        ",whiteMf='" + whiteMf + '\'' +
        ",whiteMc='" + whiteMc + '\'' +
        ",whiteKz='" + whiteKz + '\'' +
        ",piece='" + piece + '\'' +
        ",kilo='" + kilo + '\'' +
        ",meter='" + meter + '\'' +
        ",state='" + state + '\'' +
        ",remark='" + remark + '\'' +
        ",seq='" + seq + '\'' +
        ",jrksumId='" + jrksumId + '\'' +
        ",jrksumShelf='" + jrksumShelf + '\'' +
        ",createTime='" + createTime + '\'' +
        ",createUser='" + createUser + '\'' +
        ",lastTime='" + lastTime + '\'' +
        ",lastUser='" + lastUser + '\'' +
        ",goodsId='" + goodsId + '\'' +
        ",client='" + client + '\'' +
        ",planCode='" + planCode + '\'' +
        ",machine='" + machine + '\'' +
        ",team='" + team + '\'' +
        ",ab='" + ab + '\'' +
        '}';
    }

    public static class Builder{
        private Integer id;
        private Integer parentId;
        private String contract;
        private String orderCode;
        private String goodsName;
        private String mSpecification;
        private String mBatch;
        private String mHeader;
        private String mHeight;
        private String whiteMf;
        private String whiteMc;
        private String whiteKz;
        private BigDecimal piece;
        private BigDecimal kilo;
        private BigDecimal meter;
        private Integer state;
        private String remark;
        private Float seq;
        private Integer jrksumId;
        private String jrksumShelf;
        private java.util.Date createTime;
        private String createUser;
        private java.util.Date lastTime;
        private String lastUser;
        private String goodsId;
        private String client;
        private String planCode;
        private String machine;
        private String team;
        private String ab;

        public Builder id(Integer id){this.id = id;return this;}
        public Builder parentId(Integer parentId){this.parentId = parentId;return this;}
        public Builder contract(String contract){this.contract = contract;return this;}
        public Builder orderCode(String orderCode){this.orderCode = orderCode;return this;}
        public Builder goodsName(String goodsName){this.goodsName = goodsName;return this;}
        public Builder mSpecification(String mSpecification){this.mSpecification = mSpecification;return this;}
        public Builder mBatch(String mBatch){this.mBatch = mBatch;return this;}
        public Builder mHeader(String mHeader){this.mHeader = mHeader;return this;}
        public Builder mHeight(String mHeight){this.mHeight = mHeight;return this;}
        public Builder whiteMf(String whiteMf){this.whiteMf = whiteMf;return this;}
        public Builder whiteMc(String whiteMc){this.whiteMc = whiteMc;return this;}
        public Builder whiteKz(String whiteKz){this.whiteKz = whiteKz;return this;}
        public Builder piece(BigDecimal piece){this.piece = piece;return this;}
        public Builder kilo(BigDecimal kilo){this.kilo = kilo;return this;}
        public Builder meter(BigDecimal meter){this.meter = meter;return this;}
        public Builder state(Integer state){this.state = state;return this;}
        public Builder remark(String remark){this.remark = remark;return this;}
        public Builder seq(Float seq){this.seq = seq;return this;}
        public Builder jrksumId(Integer jrksumId){this.jrksumId = jrksumId;return this;}
        public Builder jrksumShelf(String jrksumShelf){this.jrksumShelf = jrksumShelf;return this;}
        public Builder createTime(java.util.Date createTime){this.createTime = createTime;return this;}
        public Builder createUser(String createUser){this.createUser = createUser;return this;}
        public Builder lastTime(java.util.Date lastTime){this.lastTime = lastTime;return this;}
        public Builder lastUser(String lastUser){this.lastUser = lastUser;return this;}
        public Builder goodsId(String goodsId){this.goodsId = goodsId;return this;}
        public Builder client(String client){this.client = client;return this;}
        public Builder planCode(String planCode){this.planCode = planCode;return this;}
        public Builder machine(String machine){this.machine = machine;return this;}
        public Builder team(String team){this.team = team;return this;}
        public Builder ab(String ab){this.ab = ab;return this;}
        public DyeGreyDetail build(){
            return new DyeGreyDetail(this);
        }
    }

    public static Builder builder(){return new Builder();}
    public DyeGreyDetail(Builder builder){
        this.id = builder.id;
        this.parentId = builder.parentId;
        this.contract = builder.contract;
        this.orderCode = builder.orderCode;
        this.goodsName = builder.goodsName;
        this.mSpecification = builder.mSpecification;
        this.mBatch = builder.mBatch;
        this.mHeader = builder.mHeader;
        this.mHeight = builder.mHeight;
        this.whiteMf = builder.whiteMf;
        this.whiteMc = builder.whiteMc;
        this.whiteKz = builder.whiteKz;
        this.piece = builder.piece;
        this.kilo = builder.kilo;
        this.meter = builder.meter;
        this.state = builder.state;
        this.remark = builder.remark;
        this.seq = builder.seq;
        this.jrksumId = builder.jrksumId;
        this.jrksumShelf = builder.jrksumShelf;
        this.createTime = builder.createTime;
        this.createUser = builder.createUser;
        this.lastTime = builder.lastTime;
        this.lastUser = builder.lastUser;
        this.goodsId = builder.goodsId;
        this.client = builder.client;
        this.planCode = builder.planCode;
        this.machine = builder.machine;
        this.team = builder.team;
        this.ab = builder.ab;
    }
    /**
     * 自定义代码请写在此处之后
     */
}
